package com.example.demo.test.service;

import com.example.demo.test.entity.News;
import com.example.demo.test.until.Result;
import org.springframework.data.jpa.repository.Query;

import java.awt.print.Pageable;
import java.util.List;

public interface NewsService {
    void insertNews(News news);

    void deleteNews(int id);

    void updateNews(News news);

    List<News> getNews();

    News getNewsById(int id);

    //测试用
    /**
     * 保存 news 对象
     * @param news
     * @return
     */
    Result saveNews(News news);

    /**
     * 查询所有news
     * @return
     */
    Result queryAll();

    Result queryList(int page, int pageSize);

    /**
     * 结合实体类entity下@NamedQueries实现的查询
     * @param id
     * @return
     */
    Result findById(int id);

    /**
     * 使用@Query来指定本地查询
     * @param id
     * @return
     */
    Result findByIdWithQuery1(int id);
    Result findByIdWithQuery2(int id);

    /**
     * 通过title查询
     * @param title
     * @return
     */
    Result getByTitle(String title);
}
